import proxy.UserServiceProxy;
import service.UserService;
import service.impl.UserServiceImpl;

/**
 * 静态代理模式演示
 */
public class StaticProxyDemo {
    public static void main(String[] args) {
        // 创建真实主题
        UserService realService = new UserServiceImpl();
        
        System.out.println("=== 管理员操作 ===");
        // 创建代理（管理员权限）
        UserService adminProxy = new UserServiceProxy(realService, "admin");
        adminProxy.addUser("张三", "123456");
        adminProxy.deleteUser("李四");
        adminProxy.getUser("王五");
        
        System.out.println("\n=== 普通用户操作 ===");
        // 创建代理（普通用户权限）
        UserService userProxy = new UserServiceProxy(realService, "user");
        userProxy.addUser("赵六", "123456");  // 权限不足
        userProxy.getUser("王五");            // 可以查询
    }
}